package com.hui.qiniucloud.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 聊天消息响应DTO
 */
@Data
@Schema(description = "聊天消息响应")
public class ChatMessageResponse {

    @Schema(description = "会话ID", example = "1")
    private Long sessionId;

    @Schema(description = "会话标题", example = "关于魔法的讨论")
    private String sessionTitle;

    @Schema(description = "AI回复内容", example = "你好！我是哈利·波特...")
    private String content;

    @Schema(description = "用户消息内容", example = "你好，请介绍一下你自己")
    private String userMessage;

    @Schema(description = "角色信息")
    private CharacterInfo character;

    @Schema(description = "消息时间")
    private LocalDateTime timestamp;

    @Data
    @Schema(description = "角色信息")
    public static class CharacterInfo {
        @Schema(description = "角色ID", example = "harry_potter")
        private String id;

        @Schema(description = "角色名称", example = "哈利·波特")
        private String name;

        @Schema(description = "角色描述", example = "霍格沃茨魔法学校的学生")
        private String description;
    }
}